package com.ruoyi.base.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.time.LocalDateTime;
import java.util.Date;

/**
 * 闸口对象 BAS_WATERGATE
 * 
 * @author ruoyi
 * @date 2025-07-27
 */
public class BasWatergate extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /**   */
    private String id;

    /** 闸口名称 */
    @Excel(name = "闸口名称")
    private String watergatename;

    /** 闸口类型（中型闸 2
小型闸 3
涵闸   4
大型闸 1） */
    @Excel(name = "闸口类型")
    private String watergatetype;

    /** 经度 */
    @Excel(name = "经度")
    private String longitude;

    /** 纬度 */
    @Excel(name = "纬度")
    private String latitude;

    /** 行政区 */
    @Excel(name = "行政区")
    private String address;

    /** 行政区编码 */
//    @Excel(name = "行政区编码")
    private String addresscode;

    /** 所属河流 */
    @Excel(name = "所属河流")
    private String rivername;

    /** 所属河流ID */
//    @Excel(name = "所属河流ID")
    private String riverid;

    /** 所属支、干流（1表示干流，0表示支流） */
//    @Excel(name = "所属支、干流", readConverterExp = "1=表示干流，0表示支流")
    private String stream;

    /**   */
//    @Excel(name = " ")
    private String normalwater;

    /**   */
//    @Excel(name = " ")
    private String alertwater;

    /**   */
//    @Excel(name = " ")
    private String controlwater;

    /**   */
//    @Excel(name = " ")
    private String realwater;

    /**   */
//    @Excel(name = " ")
    private String overalert;

    /**  开启状态 1打开，0关闭 */
    @Excel(name = " 开启状态 1打开，0关闭")
    private String openclose;
    /**  开启状态 1打开，0关闭 */
//    @Excel(name = " 开启状态 1打开，0关闭")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date updatetime;
    /**   */
//    @Excel(name = " ")
    private String type;

    /** 调控方式 */
//    @Excel(name = "调控方式")
    private String regulationmode;

    /** 最大流量（立方/秒） */
    @Excel(name = "最大流量", readConverterExp = "立方/秒")
    private String maxflow;

    /** 调度单位 */
    @Excel(name = "调度单位")
    private String regulationunit;

    /** 调度单位 */
//    @Excel(name = "备注")
    private String remark;

    /** 闸口类型编码（中型闸 2
小型闸 3
涵闸   4
大型闸 1） */
//    @Excel(name = "闸口类型编码", readConverterExp = "中=型闸,2=小型闸,3=涵闸,4=大型闸,1=")
    private String watergatetypecode;

    /** 水体类型(河流、湖库） */
//    @Excel(name = "水体类型(河流、湖库）")
    private String watertype;

    /** 闸坝类型（拦河闸、泵站、橡胶坝、滚水坝、通航建筑物） */
//    @Excel(name = "闸坝类型", readConverterExp = "拦=河闸、泵站、橡胶坝、滚水坝、通航建筑物")
    private String intercepttype;

    /** 装机流量（m3/s）(水休类型是湖库时用) */
//    @Excel(name = "装机流量", readConverterExp = "m=3/s")
    private String installedflow;

    /** 总装机功率（kW）(水休类型是湖库时用) */
//    @Excel(name = "总装机功率", readConverterExp = "k=W")
    private String totalpower;

    /** 工程规模(水休类型是湖库时用) */
//    @Excel(name = "工程规模(水休类型是湖库时用)")
    private String projectscale;

    public String getAddresscode() {
        return addresscode;
    }

    public void setAddresscode(String addresscode) {
        this.addresscode = addresscode;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getWatergatename() {
        return watergatename;
    }

    public void setWatergatename(String watergatename) {
        this.watergatename = watergatename;
    }

    public String getWatergatetype() {
        return watergatetype;
    }

    public void setWatergatetype(String watergatetype) {
        this.watergatetype = watergatetype;
    }

    public String getLongitude() {
        return longitude;
    }

    public void setLongitude(String longitude) {
        this.longitude = longitude;
    }

    public String getLatitude() {
        return latitude;
    }

    public void setLatitude(String latitude) {
        this.latitude = latitude;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getRivername() {
        return rivername;
    }

    public void setRivername(String rivername) {
        this.rivername = rivername;
    }

    public String getRiverid() {
        return riverid;
    }

    public void setRiverid(String riverid) {
        this.riverid = riverid;
    }

    public String getStream() {
        return stream;
    }

    public void setStream(String stream) {
        this.stream = stream;
    }

    public String getNormalwater() {
        return normalwater;
    }

    public void setNormalwater(String normalwater) {
        this.normalwater = normalwater;
    }

    public String getAlertwater() {
        return alertwater;
    }

    public void setAlertwater(String alertwater) {
        this.alertwater = alertwater;
    }

    public String getControlwater() {
        return controlwater;
    }

    public void setControlwater(String controlwater) {
        this.controlwater = controlwater;
    }

    public String getRealwater() {
        return realwater;
    }

    public void setRealwater(String realwater) {
        this.realwater = realwater;
    }

    public String getOveralert() {
        return overalert;
    }

    public void setOveralert(String overalert) {
        this.overalert = overalert;
    }

    public String getOpenclose() {
        return openclose;
    }

    public void setOpenclose(String openclose) {
        this.openclose = openclose;
    }

    public Date getUpdatetime() {
        return updatetime;
    }

    public void setUpdatetime(Date updatetime) {
        this.updatetime = updatetime;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getRegulationmode() {
        return regulationmode;
    }

    public void setRegulationmode(String regulationmode) {
        this.regulationmode = regulationmode;
    }

    public String getMaxflow() {
        return maxflow;
    }

    public void setMaxflow(String maxflow) {
        this.maxflow = maxflow;
    }

    public String getRegulationunit() {
        return regulationunit;
    }

    public void setRegulationunit(String regulationunit) {
        this.regulationunit = regulationunit;
    }

    @Override
    public String getRemark() {
        return remark;
    }

    @Override
    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getWatergatetypecode() {
        return watergatetypecode;
    }

    public void setWatergatetypecode(String watergatetypecode) {
        this.watergatetypecode = watergatetypecode;
    }

    public String getWatertype() {
        return watertype;
    }

    public void setWatertype(String watertype) {
        this.watertype = watertype;
    }

    public String getIntercepttype() {
        return intercepttype;
    }

    public void setIntercepttype(String intercepttype) {
        this.intercepttype = intercepttype;
    }

    public String getInstalledflow() {
        return installedflow;
    }

    public void setInstalledflow(String installedflow) {
        this.installedflow = installedflow;
    }

    public String getTotalpower() {
        return totalpower;
    }

    public void setTotalpower(String totalpower) {
        this.totalpower = totalpower;
    }

    public String getProjectscale() {
        return projectscale;
    }

    public void setProjectscale(String projectscale) {
        this.projectscale = projectscale;
    }
}
